草庐IT

sql - MySQL数据版本控制

全部标签

ruby - 如何在 Rails 之外的 Ruby 项目上加载 ActiveRecord 数据库任务?

事件记录3.2.14我想在非RailsRuby项目中使用ActiveRecord。我想让ActiveRecord定义的rake任务可用。我该怎么做?rakedb:create#CreatethedatabasefromDATABASE_URLorconfig/database.ymlforthecurrentRails.env(usedb:create:alltocreatealldbsintheconfig)rakedb:drop#DropsthedatabaseusingDATABASE_URLorthecurrentRails.env(usedb:drop:alltodropal

ruby - 如何在不保存到文件的情况下将文本数据从 ruby​​ 控制台传递到剪贴板?

我正在尝试将我创建的全局变量中包含的数组传递到我mac上的剪贴板中。它很长,所以我不想在我的控制台上突出显示、复制和粘贴。我想使用嵌入式unix代码,特别是mac笔记本电脑控制台的pbcopy函数,它允许我将文本传递到我的计算机剪贴板,准备粘贴。如果我通过文件保存来做到这一点,我会做这样的事情(在ruby​​中):stringdata=>File.open("temp.txt"){|f|f.write(stringdata)}`cattemp.txt|pbcopy`但我是否可以在不创建临时文件的情况下执行此操作?我相信这是可能的。文本中的所有内容都是可能的。提前感谢您的解决方案

ruby - 创建交互式 ruby​​ 控制台应用程序

我想制作交互式应用程序,用户可以在其中启动它并可以通过键入命令(某种shell)来完成各种任务例子:./myapp.rbAppsaysHiCommands:help-displayhelpaboutcommandopen-opentaskdo-doactionStart>helpopenopenopensspecifiedtaskStart>openSomethingSomething>doSomeActionSuccess!Something>(blinkingcursorhere)我搜索了但找不到任何可以专门用于控制台交互的ruby​​gem,所以我要自己制作...我看了Thor,

ruby - 哪个查询去了哪个数据库的 ActiveRecord 日志

在与不同数据库有多个连接的ActiveRecord应用程序中,日志中没有任何内容表明哪个查询去了哪个数据库。这些查询分离数据库:Base1.connection.select_value("select*fromfoo")Base2.connection.select_value("select*fromfoo")发出这些日志条目:D,[2017-03-13T09:27:11.844395#22112]DEBUG--:(0.6ms)select*fromfooD,[2017-03-13T09:27:11.844539#22112]DEBUG--:(0.1ms)select*fromfo

Ruby 找不到新版本的 OpenSSL

OpenSSL::OPENSSL_VERSION_NUMBER何时何地设置?为什么它没有设置为我刚刚安装的最新OpenSSL?首先是错误:$geminstallactivesupport-v'3.2.13'Errorwhileexecutinggem...(RuntimeError)Unsupporteddigestalgorithm(SHA512)如果我直接进入irb,我可以看到Ruby使用的是“旧的”openssl:$irb>>require'openssl'=>true>>OpenSSL::Digest.new('sha512')RuntimeError:Unsupportedd

ruby-on-rails - 为 Rails 迁移加载种子数据

我有一个现有的数据库,我正在将以前的“NULL”列转换为具有默认值的列(并使用所述默认值填充该列)。但是,该值是我需要创建的记录的ID。如果我将此记录放入db/seeds.rb,它不会运行,因为db/seeds.rb在迁移之后运行——但迁移需要种子数据。如果我在迁移中保留记录创建,那么如果我使用db:load创建新数据库,我将不会获得记录。除了在db/seeds.rb和迁移中复制它之外,还有更好的方法吗?谢谢! 最佳答案 虽然我能理解您希望保持DRY并且不必在migration和seeds.rb中都写这个,但我认为您应该在两个地方都

ruby-on-rails - 多个数据库的测试和 database_cleaner

我们有一个邮箱模型,它使用另一个邮件应用程序也连接到的辅助数据库。这称为使用establish_connection:mail_database现在,我想我可以尝试将它包装在if语句中,以便它为测试环境使用不同的连接,但我想知道如何保持这个数据库的清洁,最好使用我们已经将其用于“常规”数据库的database_cleaner。我希望有人能将我推向正确的方向。 最佳答案 我有一个使用rspec(2.12.0)和使用database_cleaner(0.9.1f4b44bb)测试的rails3.2.10应用程序,它有两个用于mysql的

ruby-on-rails - 如何清理 Rails 4 中的原始 SQL

在Rails3中,我可以使用sanitize_sql_array为那些偶尔需要原始SQL查询的时刻清理原始SQL。但这似乎已在Rails4中删除,或者没有删除太多,而是移至ActiveRecord::Sanitization。但是,我现在不知道如何调用sanitize_sql_array,那么在Rails4中清理原始SQL的最佳方法是什么?我想澄清一下,我在这里谈论的是完整的原始SQL查询,而不是使用Rail的模型。我知道这不是最佳实践,这正是我必须为这个特定查询做的事情,因为它不能用Rails漂亮的ActiveRecord接口(interface)表示(相信我,我已经试过了)。这是一

ruby-on-rails - 没有数据库的注册或邀请电子邮件验证

我想让我的数据库中几乎没有陈旧的帐户,我正在考虑进行新的注册和邀请,将他们的数据作为加密或散列url放入欢迎电子邮件中。一旦访问url中的链接,信息就会作为帐户添加到数据库中。目前有什么东西可以做到这一点吗?关于以这种方式进行用户注册的任何引用、想法或警告?谢谢!编辑:我做了一个工作示例,url是127个字符。http://localhost/confirm?_=hBRCGVqie5PetQhjiagq9F6kmi7luVxpcpEYMWaxrtSHIPA3rF0Hufy6EgiH%0A%2BL3t9dcgV9es9Zywkl4F1lcMyA%3D%3D%0A显然,更多数据=更大的ur

ruby-on-rails - 如何找出现有 Rails 项目基于哪个 Ruby 版本?

我有一个现有的RubyonRails项目。如何找出应用程序最初使用的Ruby版本?编辑:总结一下这个线程:如果没有特定于ruby​​版本的gem,那么每个Ruby都应该可以工作。您的所有帖子都很有帮助-谢谢。 最佳答案 如果没有使用特定于版本的gem,我不确定是否可以确定在开发过程中使用的确切ruby​​版本。在任何情况下,该应用都可能适用于多个版本,具体取决于它所具有的功能。如果该应用有全面的测试,您可以回过头来找到所有测试都通过的最新版本。检查与所用Rails版本兼容的最低Ruby版本也有助于缩小范围。